.\"   $Id: addlocap.3,v 1.2 2002/08/14 20:41:56 pnt Exp $
.\" @(#)addlocap.2 2.11 91/08/22 ; Labo ASIM cao-vlsi; Author : Pierre Nguyen Tuong
.if t \{\
.so man1/alc_contents.mac
.XS \n%
.ti 0.2i
addlocap
.XE
.XS2 \n%
.ti 0.2i
addlocap
.XE2 \}
.TH ADDLOCAP 3 "August 14, 2002" "ASIM/LIP6" "MBK LOGICAL FUNCTIONS"
.SH NAME
addlocap \- create a logical capacitor
.so man1/alc_origin.1
.SH SYNOPSIS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
.ta 3n 23n
#include "mlo.h"

locap_list \(**addlocap(ptfig,type,capa,tcon,bcon,name)
lofig_list \(**ptfig ;
char type ;
double capa ;
losig_list \(**tcon, \(**bcon ;
const char \(**name ;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIptfig\fP
Pointer to the figure in which the capacitor should be added
.TP
\fItype\fP
Capacitor type
.TP
\fIcapa\fP
Capacitance value in Farads
.TP
\fItcon\fP
Pointer to the signal to be connected on the capacitor top plate
.TP
\fIbcon\fP
Pointer to the signal to be connected on the capacitor bottom plate
.TP
\fIname\fP
Capacitor instance name
.SH DESCRIPTION
\fBaddlocap\fP creates a new capacitor, and adds it to the
list of capacitors pointed to by \fIptfig \-> LOCAP\fP. The new capacitor is 
added in front of the list, and becomes itself the list head.
.br
The \fItype\fP parameter can take two values :
.RS
.TP 20
\fBCAPMIM\fP
for a metal/metal capacitor (the top plate and the bottom plate layers are different metal layers)
.TP
\fBCAPPNWELL\fP
for a POLY/NWELL capacitor (if available in the technology). The top plate layer is POLY, bottom plate is NWELL.
.RE
.LP
The \fIcapa\fP\ argument is the capacitance value in Farads.
.br
Two connectors are created each time a capacitor is added, and the
\fItcon\fP and \fIbcon\fP \fBlosigs\fP are attached to
the \fISIG\fP field of the \fBlocon\fP of the appropriate connector. The
connectors names are \fItcon \fP (top plate) and \fIbcon\fP (bottom plate); their
direction, \fIDIR\fP, are set to \fB'P'\fP, and their \fITYPE\fP \fBINTERNAL\fP.
For details on the structures, see \fBlocon\fP(3) and \fBlocap\fR(3).
.SH RETURN VALUE
\fBaddlocap\fP returns a pointer to the newly created capacitor.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"\(**\(**\(** mbk error \(**\(**\(** illegal capacitor type : \fItype\fP"
.ft R
.RS
The \fItype\fP is not a legal capacitor type.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "mlo.h"

void parallel_capacitors(void) /\(** netlist of two parallel capacitors \(**/
{
  lofig_list \(**pt  = NULL ;
  losig_list \(**in  = NULL ;
  losig_list \(**out = NULL ;

  pt = addlofig("parallel_capacitors") ;
  addlocon(pt,"in",in = givelosig(pt,0),IN) ;
  addlocon(pt,"out",out = givelosig(pt,1),OUT) ;

  addlocap(pt,CAPMIM,0.5e-6,in,out,"cap1") ;
  addlocap(pt,CAPMIM,0.5e-6,in,out,"cap2") ;
}
.ft R
.fi
.SH SEE ALSO
.BR mbk (1),
.BR lofig (3),
.BR locap (3),
.BR locon (3),
.BR dellocap (3).


.so man1/alc_bug_report.1

